package Day07;
/*
数组的普通查找算法：  从数组的第一个位置开始，逐个比较，直到找到被查找的元素，我们就停止查找
                  如果把数组中的元素与待查找的元素全部都比较一遍，发现都不相同，此时说明带查找元素在数组中一定不存在
   已知一个数组{23，34，45，56，67，78，89}
   待查找的元素：56     查到位置3
   带查找的元素：100    找不到
 */
public class ArrayDemo05 {
    public static void main(String[] args) {
        //1.定义一个数组
        int[] arr = {23, 34, 45, 56, 67, 78, 89};

        //2.普通查找算法
        System.out.println(findIndex(arr,56));
        System.out.println(findIndex(arr,100));
    }
    /*
    查找算法中变量（不确定）的量？
        数组不确定
        查找的元素不确定

    返回值类型如何确定？
       由于我们像获取这个元素在数组中的索引，所以定义返回值
     */

    public static int findIndex(int[] arr, int key) {
        //遍历数组，拿着key与arr中的元素一一对比
        for (int i = 0; i < arr.length; i++) {
            if (key == arr[i]) {
                return i;  //返回找到的索引
            }
        }

        //当循环走完，才能说明key与数组中的元素都比较了一遍
        //如果走到循环外面，一定说明此时元素没找到
        return -1;   //代表没找到
    }
}